const cookieparser = process.server ? require('cookieparser') : undefined
//返回主数据冲突，把store定义成一个函数
export const store = () => {
    return {
        //当前用户的登录状态
        user:{}
    }
    
}
export const mutations= {
    setUser(state,data) {
        state.user = data
    }
}
export const actions = {
    //特殊的nuxt方法，在服务器渲染期间自动调用actions
    //作用是初始化容器数据，传递数据给客户端使用
    nuxtServerInit({ commit }, { req }) {
        let user = null
        if (req.headers.cookie) {
            //cookie字符串转成js对象
            const parsed = cookieparser.parse(req.headers.cookie)
            try {
                user = JSON.parse(parsed.user)
            } catch (err) {
                // No valid cookie found
            }
        }
        //修改state状态
        commit('setUser', user)
    }
}